#pragma once
#include "NeroEngine\NResourceManagerh.h"
namespace Graphics
{
	class Model;
}

namespace Graphics
{

template<class T>
void CreateModelResource(T** resource, const unsigned int handle, const std::string& instanceName, const std::string& filePath)
{
	*resource = MY_NEW(Memory::HID_Rendering,"ModelResource") T(instanceName, filePath);
}

class ModelResourceManager : public Engine::NResourceManager<Graphics::Model>
{
public:
	ModelResourceManager(void);
	virtual ~ModelResourceManager(void);
	static void Initialize();
	static void Deinitialize();
	static ModelResourceManager* GetInstance();
private:
	static ModelResourceManager* sInstance;
};
}